The advent of cloud-based computing architectures has opened new possibilities for the rapid and scalable deployment of information technology services, including computing resources, software, and data, for myriad uses, such as virtual Web stores, media outlets, and other on-line sites or services. In general, a cloud-based architecture deploys a set of hosted resources such as processors, storage space, operating systems, software and other components that can be combined or strung together to form virtual machines. A user or customer can request the instantiation of a provisioned virtual machine, or set of machines, incorporating specific cloud resources from a central server or management system to perform intended tasks or run specific applications. For example, a user may wish to set up and instantiate a virtual server from the cloud to create a storefront to market products or services on a temporary basis, for instance, to sell tickets to an upcoming sports or musical performance. The user can lease or subscribe to the set of cloud resources (including software) needed to build and run the set of instantiated virtual machines on a comparatively short-term basis, such as hours or days, for their intended application.
Typically, when a user utilizes a cloud, the user must monitor or track the software applications executed in the cloud and/or the processes instantiated in the cloud. For example, the user may track the cloud processes to ensure that the correct cloud processes have been instantiated, that the cloud processes are functioning properly and/or efficiently, that the cloud is providing sufficient resources to the cloud processes, etc. Due to the user's requirements and usage, including third-party usage, of the cloud, the user may have many applications and/or processes instantiated in a cloud and may be utilizing multiple independent clouds to support the cloud processes. As such, the user may have difficulty determining a satisfactory deployment architecture in the cloud, especially as the applications and/or processes are dynamically instantiated or terminated over time. Additionally, the user may have difficulty tracking the applications and/or processes utilized by the cloud processes. For example, as the applications and/or processes run in the cloud(s), the cloud processes may spawn new cloud processes. As such, the initial deployment architecture hosting the user's applications and/or processes may no longer be satisfactory for, or even capable of, supporting the user's applications and/or processes.